/**
 * Created by ambaye on 2015-03-03.
 */
//declaration de variables
var positionClicy;
var positionClicx;
var appriciation = Array();
appriciation[0]="100% Du jamais vu !!!";
appriciation[1]="La quasi perfection !!!";
appriciation[2]="Vous êtes excellent !";
appriciation[3]="Vous êtes très bon !";
appriciation[4]="Très bonnes connaissances.";
appriciation[5]="Bonnes connaissances.";
appriciation[6]="Bonne partie.";
appriciation[7]="Partie correcte.";
appriciation[8]="Assez bonne partie.";
appriciation[9]="Vous êtes dans les moins mauvais !";
appriciation[10]="Il y a pire...";
appriciation[11]="Pas mal, mais...";
appriciation[12]="Hum, recommencez pour voir...";
appriciation[13]="Vous devriez voyager plus !";
appriciation[14]="Ah la géographie !";
appriciation[15]="Bof...";
appriciation[16]="Retournez un peu à l'école !";
appriciation[17]="Achetez-vous un Atlas !";
appriciation[18]="Vous savez lire une carte ?";
appriciation[19]="Changez donc de lunettes !";
appriciation[20]="Appliquez-vous, que diable !";
appriciation[21]="Pas terrible, concentrez-vous !";
appriciation[22]="Vous l'avez fait exprès ?";
appriciation[23]="Et en sport, vous êtes bon ?";
appriciation[24]="Prenez plutôt un bon livre !";
appriciation[25]="Oula, ça craint vraiment !";
appriciation[26]="Changez vite de jeu !";
appriciation[27]="Essayez plutôt le jeu de l\'oie !";
appriciation[28]="Sans commentaires !";
appriciation[29]="J'espère que vous avez honte !";
appriciation[30]="Eteignez vite cet ordinateur !";
appriciation[31]="Changez vite de jeu !";
appriciation[32]="Et en sport, vous êtes bon ?";
appriciation[33]="Pas de chance ou quoi ?";
appriciation[34]="Parmi les plus mauvais !";
appriciation[35]="Allez vite dormir !";
appriciation[36]="Vous êtes un extraterrestre ?";
appriciation[37]="Vous habitez la planète Mars ?";
appriciation[38]="Vous avez un problème de vue ?";
appriciation[39]="Aïe, pauvre de vous !";
appriciation[40]="Catastrophe !";
appriciation[41]="Vous avez mal à la tête ?";
appriciation[42]="Et vous êtes fier de vous ?";
appriciation[43]="Allez vite vous oxygéner le cerveau !";
appriciation[44]="Comme elle est loin l'école !";
appriciation[45]="Difficile de faire pire !";
var paysData = [];
var aleatoire =[];
var harsard =[];
var ordre=0;
var propose = Array();
var output, score1;
var output1, output2;
var reppositive = 0, repnegative = 0, question;
var canvas = null,
    ctx = null,
    canvas = document.getElementById("canvas");
ctx = canvas.getContext("2d");
var img = new Image();
img.src = 'image/afrique4.gif';
//affiche la page de demarrage
function chargement() {

    ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
    document.getElementById("oui").style.visibility = "hidden";
    document.getElementById("non").style.visibility = "hidden";
    document.getElementById("score").style.visibility = "hidden";
    document.getElementById("message").style.visibility = "hidden";
    document.getElementById("resetbutton").style.visibility = "hidden";
    document.getElementById("labelmessage").style.visibility = "hidden";
    document.getElementById("indication").innerHTML= "veuillez cliquer sur le boutton jouer pour commencer";

    readTextFile("text_file.txt");
    harsard=extrairepays();
    aleatoire = echanger(harsard);
   localStorage.getItem('score');


}
//affiche la page du jeu
function echanger(paysData) {
    for (var i = paysData.length - 1; i > 0; i--) {
        var j = Math.floor(Math.random() * (i + 1));
        var temp = paysData[i];
        paysData[i] = paysData[j];
        paysData[j] = temp;
    }
    return paysData;
}
function jouer() {
    var imgjouer = new Image();
    imgjouer.src = 'image/afrique5.jpg';
    ctx.drawImage(imgjouer, 0, 0, canvas.width, canvas.height);
    document.getElementById("oui").style.visibility = "visible";
    document.getElementById("non").style.visibility = "visible";
    document.getElementById("jouer").style.visibility = "hidden";
    document.getElementById("indication").style.visibility = "hidden";
    document.getElementById('message').style.visibility = "visible";
    document.getElementById("resetbutton").style.visibility = "visible";
    document.getElementById("labelmessage").style.visibility = "visible";
    affiche();

}
//lecture du fichier des coordonnees
function readTextFile(file) {
    var rawFile = new XMLHttpRequest();

    rawFile.open("GET", file, false);
    rawFile.onreadystatechange = function () {
        if (rawFile.readyState === 4) {
            if (rawFile.status === 200 || rawFile.status == 0) {
                var allText = rawFile.responseText;
                var lines = allText.split(/\r\n|\r|\n/g);
                for (var i = 0; i < lines.length; i++) {
                    paysData.push(lines[i].split(","));
                }
            }
        }
    };
    rawFile.send(null);

}
// verifier si un pays donne se trouve dans un tableau
function trouvepays(postClickx, postclicky) {
    console.log( paysData);
    for (var i = 0; i < paysData.length; i++) {

        var reponse = isInside(postClickx, postclicky, paysData[i][1], paysData[i][2], paysData[i][3], paysData[i][4]);
        if (reponse) {
            return paysData[i][0];
        }
    }
}
function extrairepays(){
    var result =Array();
    for (var i = 0; i < paysData.length; i++) {
        result[i]= paysData[i][0];
       // console.log( resultat[i]);
    }
    console.log( result);
return result;
}
// appel de la fonction clic
leclick();
//au clic sur la carte de jeu
canvas.addEventListener("onclick", function (e) {
    readTextFile("text_file.txt");

});
function isInside(x, y, z1, z2, z3, z4) {
    var x1 = Math.min(z1, z3);
    var x2 = Math.max(z1, z3);
    var y1 = Math.min(z2, z4);
    var y2 = Math.max(z2, z4);
    if ((x1 <= x && x <= x2) && (y1 <= y && y <= y2)) {
        return true;
    } else {
        return false;
    }

};
function getCoords(el, event) {
    //ox Renvoie le nombre de pixels dont le coin su l'axe x
    var ox = -el.offsetLeft,
        oy = -el.offsetTop;
    while (el = el.offsetParent) {
        ox += el.scrollLeft - el.offsetLeft;
        oy += el.scrollTop - el.offsetTop;
    }
    return {x: event.clientX + ox, y: event.clientY + oy};
}
function leclick() {
    canvas.onclick = function (e) {
        var coords = getCoords(this, e);
        console.log(coords);
        positionClicx = coords.x;
        positionClicy = coords.y;
        var nomPays = trouvepays(positionClicx, positionClicy);

        if (nomPays != undefined && nomPays == question) {
            console.log(nomPays);
            console.log(question);
            //code pour dire au joeur que le pays est bon
            reppositive++;

        }
        else {
            //il c<est trompe ou le pays nexiset pas
            repnegative--;
            console.log(nomPays);
            console.log(question);
            //corrige();
        }
        nettoie();
        ordre++;
        affiche();
        if (ordre == paysData.length) {
            resultat();
        }

    };
    function resultat() {
        nettoie();
        document.getElementById('score').value = appriciation[45 - reppositive];
        document.getElementById('message').value = 'TERMINE';
        document.getElementById('score').style.visibility = "visible";
        localStorage.setItem('score', document.getElementById('score').value = appriciation[45 - reppositive]);
        //score1 = document.getElementById('score').value = reppositive+repnegative;
        //setTimeout('affiche()', 1500);
    }

}
function nettoie() {
    document.getElementById('message').value = "";

}

function affiche() {

    if (ordre < paysData.length) {
        question = document.getElementById('message').value + aleatoire[ordre];
        output = document.getElementById('message').value = question;
    }

    output1 = document.getElementById('oui').value = reppositive;
    output2 = document.getElementById('non').value = repnegative;

}
function corrige() {
   //if(question!=null)
   //correct = document.getElementById('correct');
   //correct.innerHTML = "non c est ici!";
}
